﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200134B RID: 4939
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class TakeMailAttachmentCsReq : IMessage<TakeMailAttachmentCsReq>, IMessage, IEquatable<TakeMailAttachmentCsReq>, IDeepCloneable<TakeMailAttachmentCsReq>, IBufferMessage
	{
		// Token: 0x17003E51 RID: 15953
		// (get) Token: 0x0600DD2B RID: 56619 RVA: 0x002502F5 File Offset: 0x0024E4F5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<TakeMailAttachmentCsReq> Parser
		{
			get
			{
				return TakeMailAttachmentCsReq._parser;
			}
		}

		// Token: 0x17003E52 RID: 15954
		// (get) Token: 0x0600DD2C RID: 56620 RVA: 0x002502FC File Offset: 0x0024E4FC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return TakeMailAttachmentCsReqReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17003E53 RID: 15955
		// (get) Token: 0x0600DD2D RID: 56621 RVA: 0x0025030E File Offset: 0x0024E50E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return TakeMailAttachmentCsReq.Descriptor;
			}
		}

		// Token: 0x0600DD2E RID: 56622 RVA: 0x00250315 File Offset: 0x0024E515
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public TakeMailAttachmentCsReq()
		{
		}

		// Token: 0x0600DD2F RID: 56623 RVA: 0x00250328 File Offset: 0x0024E528
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public TakeMailAttachmentCsReq(TakeMailAttachmentCsReq other) : this()
		{
			this.takeMailIdList_ = other.takeMailIdList_.Clone();
			this.optionalRewardId_ = other.optionalRewardId_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600DD30 RID: 56624 RVA: 0x0025035E File Offset: 0x0024E55E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public TakeMailAttachmentCsReq Clone()
		{
			return new TakeMailAttachmentCsReq(this);
		}

		// Token: 0x17003E54 RID: 15956
		// (get) Token: 0x0600DD31 RID: 56625 RVA: 0x00250366 File Offset: 0x0024E566
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> TakeMailIdList
		{
			get
			{
				return this.takeMailIdList_;
			}
		}

		// Token: 0x17003E55 RID: 15957
		// (get) Token: 0x0600DD32 RID: 56626 RVA: 0x0025036E File Offset: 0x0024E56E
		// (set) Token: 0x0600DD33 RID: 56627 RVA: 0x00250376 File Offset: 0x0024E576
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint OptionalRewardId
		{
			get
			{
				return this.optionalRewardId_;
			}
			set
			{
				this.optionalRewardId_ = value;
			}
		}

		// Token: 0x0600DD34 RID: 56628 RVA: 0x0025037F File Offset: 0x0024E57F
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as TakeMailAttachmentCsReq);
		}

		// Token: 0x0600DD35 RID: 56629 RVA: 0x00250390 File Offset: 0x0024E590
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(TakeMailAttachmentCsReq other)
		{
			return other != null && (other == this || (this.takeMailIdList_.Equals(other.takeMailIdList_) && this.OptionalRewardId == other.OptionalRewardId && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600DD36 RID: 56630 RVA: 0x002503E0 File Offset: 0x0024E5E0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.takeMailIdList_.GetHashCode();
			if (this.OptionalRewardId != 0U)
			{
				num ^= this.OptionalRewardId.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600DD37 RID: 56631 RVA: 0x0025042D File Offset: 0x0024E62D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600DD38 RID: 56632 RVA: 0x00250435 File Offset: 0x0024E635
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600DD39 RID: 56633 RVA: 0x00250440 File Offset: 0x0024E640
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.OptionalRewardId != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.OptionalRewardId);
			}
			this.takeMailIdList_.WriteTo(ref output, TakeMailAttachmentCsReq._repeated_takeMailIdList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600DD3A RID: 56634 RVA: 0x00250490 File Offset: 0x0024E690
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.takeMailIdList_.CalculateSize(TakeMailAttachmentCsReq._repeated_takeMailIdList_codec);
			if (this.OptionalRewardId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.OptionalRewardId);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600DD3B RID: 56635 RVA: 0x002504E4 File Offset: 0x0024E6E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(TakeMailAttachmentCsReq other)
		{
			if (other == null)
			{
				return;
			}
			this.takeMailIdList_.Add(other.takeMailIdList_);
			if (other.OptionalRewardId != 0U)
			{
				this.OptionalRewardId = other.OptionalRewardId;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600DD3C RID: 56636 RVA: 0x00250531 File Offset: 0x0024E731
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600DD3D RID: 56637 RVA: 0x0025053C File Offset: 0x0024E73C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 96U)
				{
					if (num != 104U && num != 106U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.takeMailIdList_.AddEntriesFrom(ref input, TakeMailAttachmentCsReq._repeated_takeMailIdList_codec);
					}
				}
				else
				{
					this.OptionalRewardId = input.ReadUInt32();
				}
			}
		}

		// Token: 0x040057C5 RID: 22469
		private static readonly MessageParser<TakeMailAttachmentCsReq> _parser = new MessageParser<TakeMailAttachmentCsReq>(() => new TakeMailAttachmentCsReq());

		// Token: 0x040057C6 RID: 22470
		private UnknownFieldSet _unknownFields;

		// Token: 0x040057C7 RID: 22471
		public const int TakeMailIdListFieldNumber = 13;

		// Token: 0x040057C8 RID: 22472
		private static readonly FieldCodec<uint> _repeated_takeMailIdList_codec = FieldCodec.ForUInt32(106U);

		// Token: 0x040057C9 RID: 22473
		private readonly RepeatedField<uint> takeMailIdList_ = new RepeatedField<uint>();

		// Token: 0x040057CA RID: 22474
		public const int OptionalRewardIdFieldNumber = 12;

		// Token: 0x040057CB RID: 22475
		private uint optionalRewardId_;
	}
}
